package com.czhhx.myedcon.ui;

import android.app.Activity;
import android.content.Intent;
import android.graphics.Color;
import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import android.view.Window;
import android.view.WindowManager;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import androidx.annotation.Nullable;

import com.aries.ui.view.title.TitleBarView;
import com.czhhx.myedcon.R;
import com.czhhx.myedcon.entity.UserEntity;

import org.litepal.LitePal;

import java.util.List;

/**
 * @Description com.czhhx.myedcon.ui
 * @Auth czh
 * @Date 2023/3/30
 * 登录
 **/
public class LoginActivity extends Activity {
    /**
     * 控件声明
     */
    TitleBarView titleBar;
    TextView tvLogin, tvRegister;
    EditText editPhone, editPassword;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        /**
         * 设置布局
         */
        setContentView(R.layout.activity_login);
        /**
         * 初始化控件方法
         */
        initView();

    }

    private void initView() {
        tvLogin = findViewById(R.id.tvLogin);
        tvRegister = findViewById(R.id.tvRegister);
        editPhone = findViewById(R.id.editPhone);
        editPassword = findViewById(R.id.editPassword);
        titleBar = findViewById(R.id.titleBar);
        /**
         * 设置状态栏文字颜色
         */
        titleBar.setStatusBarLightMode(true);
        /**
         * 这种顶部文字
         */
        titleBar.setTitleMainText("登录");
        /**
         * 设置顶部文字颜色
         */
        titleBar.setTextColor(Color.parseColor("#000000"));

        /**
         *登录按钮点击事件
         */
        tvLogin.setOnClickListener(view -> {
            /**
             * 判断手机号是否为空
             */
            if (getEdit(editPhone)) {
                showToast("手机号不能为空");
                return;
            }
            /**
             * 判断是否输入手机号
             */
            if (getEdit(editPassword)){
                showToast("密码不能为空");
                return;
            }
            /**
             * 根据手机号查询用户是否存在
             */
            List<UserEntity> userEntities = LitePal.where("phone = ?",
                    editPhone.getText().toString()).find(UserEntity.class);
            if (userEntities.size()>0){
                /**
                 * 手机号存在根据手机号查询用户输入密码是否正确，正确进入首页
                 */
                    if (userEntities.get(0).getPassword()!=null&&userEntities.get(0).getPassword().equals(editPassword.getText().toString())){
                        Intent intent = new Intent(this, MainActivity.class);
                        startActivity(intent);
                        finish();
                    }else {
                        showToast("密码错误");
                    }
            }else {
                showToast("当前用户没有注册，请注册");
            }

        });
        /**
         * 点击注册按钮控件
         * 进入注册界面
         */
        tvRegister.setOnClickListener(view -> {
            Intent intent = new Intent(this, RegisterActivity.class);
            startActivity(intent);
        });
    }

    /**
     * 弹出提示方法
     * @param s
     */
    private void showToast(String s) {
        Toast.makeText(this, s, Toast.LENGTH_LONG).show();
    }

    /**
     * 根据输入框控件返回输入框内容
     * @param edit
     * @return
     */
    private boolean getEdit(EditText edit) {
        return edit.getText().toString().isEmpty();
    }
}
